import axios from "axios";
import Vue from "vue";
// 导入NProgress 对应的js和css
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'

import { Message } from "element-ui";
import router from "./router";

Vue.prototype.$http = axios;
// 在requset拦截其中展示进度条  NProgress.start()
axios.defaults.baseURL = "http://127.0.0.1:8888/api/private/v1/";

axios.interceptors.request.use(config => {
  NProgress.start()
  // console.log(config);
  config.headers.Authorization = window.sessionStorage.getItem("token");
  return config;
});
// 在response拦截其中隐藏进度条   NProgress.done()

axios.interceptors.response.use(config => {
  NProgress.done()

  return config
})







//请求拦截器
// axios.interceptors.request.use(
//   config => {
//     if (window.sessionStorage.getItem("tokenStr")) {
//       config.headers["Authorization"] = window.sessionStorage.getItem(
//         "tokenStr"
//       );
//     }
//     return config;
//   },
//   error => {
//     console.log(error);
//   }
// );

// 封装响应拦截器
// axios.interceptors.response.use(
//   success => {
//     if (success.status && success.status == 200) {
//       if (
//         success.data.code == 500 ||
//         success.data.code ||
//         success.data.code == 403
//       ) {
//         Message.error({ message: success.data.message });
//         return;
//       }
//       if (success.data.message) {
//         Message.success({ message: success.data.message });
//       }
//     }
//     return success.data; //返回成功
//   },
//   error => {
//接口都访问失败了
//     if (error.response.code == 504 || error.response.code == 404) {
//       Message.error({ message: "服务器被吃了" });
//     } else if (error.response.code == 403) {
//       Message.error({ message: "权限不足请联系管理员" });
//     } else if (error.response.code == 401) {
//       Message.error({ message: "尚未登录，请先登录" });
//       router.replace("/");
//     } else {
//       if (error.response.data.message) {
//         Message.error({ message: error.response.data.message });
//       } else {
//         Message.error({ message: "未知错误" });
//       }
//     }
//     return;
//   }
// );

// let base = "";

// 传送json的post请求
// export const postRequest = (url, params) => {
//   return axios({
//     method: "post",
//     url:`$(base)$(url)`,
//     data:params
//   });
// };

// export const putRequest = (url,params) => {
//     return axios({
//         method:'put',
//         url:`$(base)$(url)`,
//         data:params
//     })
// }

// export const getRequest = (url,params) => {
//     return axios({
//         method:'get',
//         url:`$(base)$(url)`,
//         data:params
//     })
// }

// export const deleteRequest = (url,params) => {
//     return axios({
//         method:'delete',
//         url:`$(base)$(url)`,
//         data:params
//     })
// }
